package com.kingzoon.seckill.util;

import java.math.BigDecimal;
import java.util.Map;

/**
 * 工具包
 * @author xiemin
 * @date 2016-11-4下午5:06:37
 * @version 1.0
 */
public class UtilTools {
	
	/**
	 * 判断对象是否为空
	 * @param object
	 * @return
	 */
	public static boolean isNull(Object object){
		if(object == null){
			return true;
		}
		return false;
	}
	
	/**
	 * 判断字符串是否为空或null
	 * @param str
	 * @return
	 */
	public static boolean isEmpty(String str){
		if(str == null){
			return true;
		}
		if("null".equals(str)){
			return true;
		}
		if("".equals(str)){
			return true;
		}
		return false;
	}
	
	/**
	 * Object转String
	 * @param object
	 * @return
	 */
	public static String valueOf(Object object){
		if(object == null){
			return "";
		}
		if(object instanceof String){
			return object.toString();
		}
		if(object instanceof BigDecimal){
			BigDecimal bigObj = (BigDecimal) object;
			return bigObj.toString();
		}
		return (String) object;
	}
	
	/**
	 * 检查参数是否缺少，是否为空
	 * @param keys
	 * @param paramMap
	 * @return
	 */
	public static String isParamEmpty(String[] keys,Map<String,Object> paramMap){
		for(String key : keys){
			if(isNull(paramMap.get(key))){
				return key;
			}
			if(isEmpty(valueOf(paramMap.get(key)))){
				return key;
			}
			
		}
		return null;
	}

}
